<?php

class NewsController extends Osml_Controller_Action
{

    public function voirAction(){
        $request = $this->getRequest();
        $id = $request->getParam("id", 0);
        $news = new Back_Model_News($id);

        $options['idNews'] = $id;
        $form = new Front_Form_NewsCommentaires();
        $form->populate($options);
        
        $this->view->form = $form;        
        $this->view->news = $news;
        
        $affichageNomAuteurNews = Back_Model_Config::recuperationValeurParCle(Osml_Global_Constantes::OSML_CONFIG_HOME_NEWS_NOM_AFFICHAGE, "valeur");
        switch ($affichageNomAuteurNews)
        {
            case "prenom-nom":
                $methodeAffichageAuteur = "getPrenomNom";
                break;
            case "pseudo":
            default:
                $methodeAffichageAuteur = "getPseudo";
                break;
        }
        $this->view->methodeAffichageAuteur = $methodeAffichageAuteur;
        $this->view->titrePage = $news->getTitre();
    }
    
    public function ajoutcommentaireAction() {
        $request = $this->getRequest();
        
        $form = new Front_Form_NewsCommentaires();
        
        if ( $request->isPost()) {
            if ($form->isValid($request->getPost())) {
                $model = new Front_Model_NewsCommentaires($form->getValues());
                $model->sauver();
                
                $this->redirect("voir", null, null, array("id" => $model->getIdNews()));
            } else {
                $this->view->form = $form;
                $this->render("voir");
            } 
        } else {
            throw new Zend_Exception(__("L'ajout de commentaire ne peut se faire que par soumission de formulaire"));
        }
    }
    
    public function supprimernewsAction() {
        $request = $this->getRequest();
        $id = $request->getParam("id", null);

        if (!is_null($id)) {
            $commentaire = new Front_Model_NewsCommentaires($id);
            $idNews = $commentaire->getIdNews();
            $commentaire->supprimer($id);
            
            $this->redirect("voir", null, null, array("id" => $idNews));
        } else {
            throw new Zend_Exception(__("Un id doit être préciser pour effectuer cette opération"));
        }
        
    }
}

